Among a plurality of communication terminals, a key of cipher algorithm is shared to encrypt communication contents between the communication terminals, thereby preventing eavesdropping of the communication contents.
At this time, when a block cipher algorithm is used as a cipher algorithm, plaintext data is divided into units (usually having a fixed length) called blocks, and encrypting process using a cipher key is repeatedly done for each block.
Further, when a stream cipher algorithm is used as the cipher algorithm, a pseudo random number called key stream is generated from the cipher key, and encrypting process of plaintext data using the key stream is repeatedly done for each bit.
In either case, the length of the cipher key shared between the communication terminals is 128 bits or 256 bits, and so on. Namely, it is a system to encrypt the communication contents based on the cipher key being shorter than the plaintext data. In these systems, a range of possible values of the cipher key is 128 to 256 powers of 2 types of combinations, and thus it is considered impossible to do brute-force attack for decrypting using all the combinations of the cipher keys if the current computer technology is employed.
On the other hand, there is another cryptosystem called OTP, in which a random number having the same length as the plaintext data is prepared and the random number is used as a key for one-time encryption.
In the OTP cipher system, the range of possible values of the cipher key is a huge space which is the same as the plaintext data, and thus it is provable that the decrypting is impossible even if computer technology is tremendously progressed. Varnam's Cipher is one type of the OTP cipher system, in which an exclusive logical sum (XOR) of the plaintext data and the cipher key is used as cipher text.
In order to encrypt the communication contents using the OTP cipher system, it is necessary to previously share the OTP cipher key being longer than or equal to the plaintext data between the communication terminals. The quantum key distribution (QKD: Quantum Key Distribution) technique is considered to be an effective technique to share the OTP cipher key.